package com.ia2014.tp.portal2.vo;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.List;


@SuppressWarnings("serial")
public class VentaVO implements AbstractVO{

	
    /**
     * Formateador de la fecha
     */
    private static SimpleDateFormat fechaFormattting = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    
    
    private Integer nroVenta;
    private Date fecha;
    private String estado;
    private UsuarioVO usuario;
	private List<ItemVentaVO> items = new ArrayList<ItemVentaVO>();	
	
	public Integer getNroVenta() {
		return nroVenta;
	}

	public void setNroVenta(Integer nroVenta) {
		this.nroVenta = nroVenta;
	}

	public List<ItemVentaVO> getItems() {
		return items;
	}

	public void setItems(List<ItemVentaVO> items) {
		this.items = items;
	}

	public String getEstado() {
		return estado;
	}

	public void setEstado(String estado) {
		this.estado = estado;
	}

	public UsuarioVO getUsuario() {
		return usuario;
	}

	public void setUsuario(UsuarioVO usuario) {
		this.usuario = usuario;
	}

	public Date getFecha() {
		return fecha;
	}

	public void setFecha(Date fecha) {
		this.fecha = fecha;
	}
	
	
	public String getFechaString() {
		if (this.getFecha() != null) {
            return fechaFormattting.format(this.getFecha());
        } else {
            return "";
        }
	}
	
	public double getMontoTotal(){
		ItemVentaVO item = null;
		
		double total = 0;
		
		Iterator<ItemVentaVO> it = items.iterator();
		
		while (it.hasNext()) {
			item = it.next();
			total += item.getArticulo().getPrecio().doubleValue() * item.getCantidad();
		}
		
		return total;
	}

	
}
